Image forming apparatus, image forming method, and medium storing a program, with selecting between process executable by image forming apparatus and process executable by external device

ABSTRACT

A PC registers in advance PC-assistant copying functions which can be provided by the printer driver for a MFP. The MFP presents, to the user, copying functions including the registered functions. Upon reception of a copy instruction, the MFP determines whether selected functions include a PC-assisted copying function. If the selected functions include a PC-assisted copying function, the MFP transmits, to the PC, scanned image data and a job ticket containing information representing the selected functions. Upon reception of the job ticket, the PC generates a print job for printing the image data on the basis of the job ticket, and transmits the print job to the MFP.

This application is a continuation of application Ser. No. 14/799,866,filed Jul. 15, 2015, which is a continuation of application Ser. No.11/913,907 filed Nov. 8, 2007, U.S. Pat. No. 9,124,731 B2, which was theNational Stage of International Application No. PCT/JP2006/309434 filedMay 1, 2006.

TECHNICAL FIELD

The present invention relates to a copying apparatus, copying system,and control method thereof and, more particularly, to a copyingapparatus and copying system which can cause a copying machine or thelike connected to a computer to perform a copying process using afunction provided by the computer, a control method thereof, and acontrol program thereof.

BACKGROUND ART

Recently, the scanner and printer units of a digital copying machine canbe used as a single-function scanner and single-function printer. Inorder to utilize the scanner and printer units of the copying machine, ascanner driver and printer driver as programs to allow a computer to usea printer and scanner must be installed in the computer. The printerdriver and scanner driver have achieved advanced functions.

Many of functions provided by the advanced scanner driver and printerdriver cannot be implemented when a single copying machine performscopying. For example, an Nin1 function of, e.g., “9 pages/sheet”(function of laying out images of nine pages on one print sheet) isprovided by the printer driver, but is not supported by a current singlecopying machine. To use a function which is provided by the printerdriver or scanner driver but not by the copying machine, an originaldocument is scanned using the scanner function of the copying machine,and the image data is input to the computer. In the computer, printsettings are made using the printer driver in order to print the inputimage data, and then, the image is printed using the printer. The usermust execute this cumbersome operation.

There is also proposed a copying application which implements scanningand printing of an original document by a simple operation on a personalcomputer (PC) using a preset scanner driver and printer driver (see,e.g., Japanese Patent Laid-Open No. 2001-345974 (pp. 8-9, FIGS. 3 and4)).

In the above-described prior art, however, various copy settings forcopying by a copying application must be made on the PC. For example,when a copying machine is connected to a network and located at a placedistant from a PC, the user must go to the copying machine, set anoriginal document there, come back to the PC, execute scanning andprinting, then go back to the image processing apparatus, and bring backthe original document and its copy. If the user does not know well howto make settings in the copying application, he cannot perform copyingusing the personal computer. Even if the user can perform copying, hemust do a setting operation on the computer for copying, decreasing thecopying efficiency.

DISCLOSURE OF INVENTION

The present invention has been made in consideration of the abovesituation, and has as its object to provide a copying apparatus andcopying system capable of utilizing, by a simple operation, imagecopying using a function provided by a computer or a function of acopying machine that is provided only for use by the computer, a controlmethod thereof, and a control program thereof.

In order to achieve the above object, the present invention comprisesthe following arrangement.

A copying apparatus which has an image scanner unit and a printer unitand can be connected to an information processing apparatus comprises

save means for saving extended function information representing anextended printer function which can be set in the information processingapparatus when the printer unit is used as a printer connected to theinformation processing apparatus,

function presentation means for outputting, as copying functions whichcan be provided by the copying apparatus, a local function which can beindependently provided by the copying apparatus and an extended printerfunction represented by the extended function information, so as toallow a user to set a function, and

control means for, when copying functions set by the user include theextended printer function, transmitting, to the connected informationprocessing apparatus, image data read by the image scanner unit andfunction setting information representing the set extended printerfunction, and when a print instruction containing the image data andprint setting information corresponding to the function settinginformation is received from the information processing apparatus,causing the printer unit to print the image data in accordance with theprint setting information.

An information processing apparatus which can communicate with a copyingapparatus having a printer unit that can be used as an independentperipheral device, and has a printer driver for the peripheral devicecomprises

recognition means for recognizing reception of image data and extendedfunction information representing a copy setting from the copyingapparatus,

setting means for, upon reception of the extended function information,setting print setting information in the printer driver in accordancewith the copy setting represented by the extended function information,and

print instruction generation means for generating a print instructioncomplying with the print setting information by using the image data asdata to be printed, and transmitting the generated print instruction tothe copying apparatus.

When the printer unit is used as a printer connected to the informationprocessing apparatus, the copying apparatus according to the presentinvention saves extended function information representing an extendedprinter function which can be set in the information processingapparatus. The copying apparatus outputs, as copying functions which canbe provided by the copying apparatus, a local function which can beindependently provided by the copying apparatus and an extended printerfunction represented by the extended function information, so as toallow the user to set a function. When copying functions set by the userinclude the extended printer function, the copying apparatus transmits,to the information processing apparatus connected to the copyingapparatus, image data read by the image scanner unit and functionsetting information representing the set extended printer function. Whenthe copying apparatus receives, from the information processingapparatus, a print instruction containing the image data and printsetting information corresponding to the function setting information,the printer unit prints the image data in accordance with the printsetting information. As a result, image copying using a functionprovided by the information processing apparatus or a function of thecopying apparatus that is provided only for use by the informationprocessing apparatus can be utilized by a simple operation.

The information processing apparatus according to the present inventionmonitors reception of image data and extended function informationrepresenting a copy setting from the connected copying apparatus. Uponreception of the extended function information, the informationprocessing apparatus sets print setting information in accordance withthe copy setting represented by the extended function information. Theinformation processing apparatus generates a print instruction complyingwith the print setting information by using the image data as data to beprinted, and transmits the generated print instruction to the copyingapparatus. Accordingly, a function provided by the informationprocessing apparatus or a function of the copying apparatus that isprovided only for use by the information processing apparatus can beprovided for a copying operation in the copying apparatus.

Other features and advantages of the present invention will be apparentfrom the following description taken in conjunction with theaccompanying drawings, in which like reference characters designate thesame or similar parts throughout the figures thereof.

BRIEF DESCRIPTION OF DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention and,together with the description, serve to explain the principles of theinvention.

FIG. 1 is a block diagram showing the basic configuration of an imageprocessing apparatus 10 according to the first embodiment of the presentinvention;

FIG. 2 is a block diagram showing the basic configuration of aninformation processing terminal 20 according to the first embodiment;

FIG. 3 is a view showing an example of a PC-assisted copying functionregistration dialog in the information processing terminal 20 accordingto the first embodiment;

FIGS. 4A and 4B are flowcharts showing a PC-assisted copying functionregistration process in the image processing apparatus 10 according tothe first embodiment;

FIG. 5 is a flowchart showing a copying function display process in theimage processing apparatus 10 according to the first embodiment;

FIG. 6 shows an example of a copying function display window when aregistered PC is neither connected nor activated in the image processingapparatus 10 according to the first embodiment;

FIG. 7 shows an example of a copying function display window when aregistered PC is connected and activated in the image processingapparatus 10 according to the first embodiment;

FIG. 8 shows an example of another copying function display window whena registered PC is connected and activated in the image processingapparatus 10 according to the first embodiment;

FIG. 9 is a flowchart showing a copy instruction process in the imageprocessing apparatus 10 according to the first embodiment;

FIG. 10 is a flowchart showing a job ticket process in the informationprocessing terminal 20 according to the first embodiment;

FIG. 11 is a view showing an example of a registration dialog for aPC-assisted copying function in an information processing terminal 20according to the second embodiment of the present invention;

FIG. 12 is a flowchart showing a PC-assisted copying functionregistration process in an image processing apparatus 10 according tothe second embodiment;

FIG. 13 shows an example of a copying function display window when aregistered PC is connected and activated in the image processingapparatus 10 according to the second embodiment;

FIG. 14 is a flowchart showing a copy instruction process in the imageprocessing apparatus 10 according to the second embodiment;

FIG. 15 is a flowchart showing a job ticket process in the informationprocessing terminal 20 according to the second embodiment;

FIG. 16A is a view showing an example of a PC-assisted copying functionregistration dialog in an information processing terminal 20 accordingto the third embodiment of the present invention;

FIG. 16B is a flowchart showing procedures for registering a PC-assistedcopying function in a user interface;

FIG. 17 shows a PC-assisted copying function selection window in animage processing apparatus 10 according to the third embodiment;

FIG. 18 is a view for explaining an outline of the configuration andoperation of a copying system according to the present invention;

FIGS. 19A and 19B are flowcharts showing print job issuing proceduresbased on a job ticket by an information processing terminal according tothe present invention; and

FIG. 20 is a block diagram showing the copying system according to thepresent invention.

BEST MODE FOR CARRYING OUT THE INVENTION First Embodiment

<Outline of Copying System in First Embodiment>

FIG. 18 is a view for explaining the operation of a copying systemaccording to the present invention. In FIG. 18, a computer 20 isconnected to a digital multi-functional peripheral (copying machine) 10which can be used as a peripheral device of the computer 20 and issuitable for a copying apparatus according to the present invention. Inthe computer 20, a printer driver for utilizing the multi-functionalperipheral as a printer is installed. The printer driver allows the userto designate print settings (e.g., settings of the layout, print style,and print quality). The multi-functional peripheral 10 independentlyfunctions as a copying machine. Some settings (e.g., double-sidedcopying) can be designated from the copying machine, and some printsettings (e.g., a print layout of “9 pages/sheet”: function of printingimages of nine pages on one print sheet) can be designated only from theprinter driver.

The PC 20 transmits in advance, to the multi-functional peripheral 10,registered capability information containing the name and IP address ofthe PC, the name of the printer driver, and information (printer drivercapability information) on printer driver capability representing aPC-assisted copying function provided by a computer (1801). The printerdriver capability information includes items which can be designatedfrom the printer driver, and values (or ranges) selectable for theitems. The printer driver capability information is also regarded asextended function information representing extended printer functionsobtained by extending the functions of a single copying machine. Uponreception of the registered capability information, the multi-functionalperipheral 10 saves it. The extended function information sometimescontains extended scanner functions representing functions provided bythe scanner driver.

More specifically, when the printer unit of a copying machine is used asa printer connected to an information processing apparatus, themulti-functional peripheral 10 saves, in a registration memory 103 (seeFIG. 1), extended function information representing extended printerfunctions which can be set in the information processing apparatus. Theregistration memory 103 corresponds to a save means according to thepresent invention.

After that, the multi-functional peripheral 10 refers to the registeredcapability information to display a list of functions selectable by theuser on the operation panel (1802). The list contains items which arecontained in printer driver capability information and can be designatedfrom the printer driver, and items which can be designated in a copyingoperation by the single multi-functional peripheral 10. This list may behierarchical or simply divided. That is, functions are displayed on theoperation panel so that local functions (local copying functions)independently provided by the copying apparatus, and extended functions(PC-assisted copying functions) extended by the computer are presentedto allow the user to set them.

That is, as copying functions which can be provided by the copyingapparatus, the copying machine outputs local functions which can beindependently provided by the copying apparatus, and functionsrepresented by extended function information so as to allow the user toset these functions. This output (display) corresponds to a functionpresentation means according to the present invention.

If a copying operation is done by the user in this state and a functionwhich should be executed in the copying operation is selected from thedisplayed list (1803), an original image is scanned and read. Thecopying machine determines whether the item of the selected function iscontained in the printer driver capability information. If a pluralityof functions are selected, the copying machine determines whether evenone of the functions is contained in the printer driver capabilityinformation. If even one function is contained, the copying apparatuscreates a job ticket which contains a corresponding printer driver name,and the identifier and value of the selected item of the printer drivercapability information (1804). The job ticket corresponds to functionsetting information representing a set extended function. The copyingmachine transmits the job ticket and the read image data to the PC 20(1805).

Upon reception of the job ticket, the PC 20 sets print settinginformation in accordance with the job ticket. More specifically, the PC20 reads print setting information of the designated printer driver, andrewrites, in the print setting information, the item of the printerdriver capability information contained in the job ticket into a valuecontained in the job ticket. The PC 20 generates a print instruction(print job) using, as one page, the received image data corresponding toone original document sheet (1806). The PC 20 transmits the generatedprint job to the multi-functional peripheral 10 (1807). Themulti-functional peripheral executes the received print job, and prints(1808).

More specifically, when copying functions set by the user include theextended printer function, the copying machine transmits, to theconnected information processing apparatus, image data read by the imagescanner unit and function setting information representing the setextended printer function. When the copying machine receives, from theinformation processing apparatus, the print instruction containing imagedata and print setting information corresponding to the function settinginformation, the printer unit prints the image data in accordance withthe print setting information. The series of processes correspond to acontrol means according to the present invention.

FIG. 20 shows the functional blocks of the copying machine andinformation processing apparatus which execute the above operation. InFIG. 20, the copying machine 10 has an image scanner unit 108 a andprinter unit 109 a, and is connected to the information processingapparatus 20. When the printer unit 109 a is utilized as a printerconnected to the information processing apparatus 20, extended functioninformation representing extended printer functions which can be set inthe information processing apparatus 20 are saved in the save means 103.By display on an operation unit/display unit 106 and 107 or the like,the copying machine 10 presents, to the user, local functions which canbe independently provided by the copying machine 10, and functions(i.e., extended printer functions provided by the information processingapparatus 20) represented by the extended function information. The userselects a desired one of the presented functions, and if necessary,inputs parameters. When copying functions set by the user include anextended printer function, a control unit 101 transmits, to theconnected information processing apparatus 20, image data read by theimage scanner unit 108 a and function setting information representingthe set extended printer function. When the control unit 101 receives,from the information processing apparatus 20, a print instructioncontaining image data and print setting information corresponding to thefunction setting information, the printer unit 109 a prints the imagedata in accordance with the print setting information.

The information processing apparatus 20 can communicate with the copyingapparatus 10 having the printer unit which can be used as an independentperipheral device, and the apparatus 20 has a printer driver 2001. Uponreception of image data and extended function information representingcopy settings from the copying apparatus 10, a recognition unit 2003recognizes the reception. In response to the recognition that theextended function information has been received, a user interface driver(setting unit) 2002 is activated. The user interface driver 2002 savesprint setting information input by the user in a setting save unit 2004in accordance with copy settings represented by the extended functioninformation for the printer driver 2001. The printer driver 2001generates a print instruction complying with the set print settinginformation by using the image data as data to be printed, and transmitsthe generated print instruction to the copying apparatus. Hence, theprinter driver 2001 also functions as a print instruction generationmeans.

In this manner, according to the copying system of the first embodiment,the user only operates the operation panel of the multi-functionalperipheral, and can utilize copying functions including functionsprovided by the computer. The user can perform a copying operation usingfunctions provided by the computer, similar to conventional copyingusing a single copying machine. The configuration and operation of thecopying system according to the first embodiment will be explained inmore detail.

<Image Processing Apparatus (Copying Machine)>

FIG. 1 is a block diagram showing the basic configuration of the imageprocessing apparatus 10. The image processing apparatus 10 is a digitalcopying machine. The image processing apparatus 10 is connected to theinformation processing terminal 20 (i.e., computer) via a network, andcan be used as a peripheral device of the computer. For this purpose, aprinter driver corresponding to the printer unit 109 a of the imageprocessing apparatus 10 and a scanner driver corresponding to the imagescanner unit 108 a are installed in the computer.

The system control unit 101 controls the operation of the wholeapparatus via a system bus 120. The system control unit 101 has, forexample, a processor (CPU), and executes a program by the processor toimplement this control. A ROM 102 stores the control program of thesystem control unit 101 and the like. The registration memory 103 isformed from a battery-backed-up SRAM, flash memory, or the like, andstores setting values, apparatus management data, and the like which areregistered by the operator. For example, the registration memory 103saves information (i.e., assistant function list 103 a) which isreceived from the information processing terminal 20 (computer) byprocedures to be described later and represents functions provided bythe printer driver installed in the information processing terminal 20.The assistant function list 103 a is printer driver capabilityinformation saved in the image processing apparatus 10.

This also applies to the scanner, and the assistant function list 103 aalso contains scanner driver capability information representingfunctions provided by the scanner driver. The registration memory 103also saves a local function list 103 b representing copying functionswhich can be provided by a single copying machine. Note that wheninformation representing copying functions which can be provided by asingle copying machine is, for example, hard-coded in a program, thelocal function list 103 b can be omitted.

An image memory 104 is formed from a DRAM, hard disk, or the like, andstores image data to be printed and the like. A work memory 105 isformed from a DRAM, hard disk, or the like, and stores program controlvariables and the like. The operation unit 106 is formed from variouskeys and the like, and allows the operator to perform various inputs.The display unit 107 is formed from an LCD, LED, and the like, andprovides various displays and audio outputs. Displayed informationcontains a copying function list (to be described later).

A read control unit 108 is formed from an image processing control unitand the like. The read control unit 108 digitizes electrical image datawhich is optically read and converted by an image sensor (e.g., CCD orCS) arranged in the image scanner unit 108 a. The read control unit 108performs various image processes (e.g., color process, binarizationprocess, and halftone process) for the digital data, and outputshigh-resolution image data. When the read control unit 108 is used as aperipheral scanner of the computer, the contents of an image process canbe designated by scanner setting information. The read control unit 108copes with either or both of an ADF scheme of reading an original imagewhile conveying original document sheets on an automatic document feeder(ADF) one by one, and an original table scheme of reading an originalimage while an original document on the glass original table standsstill.

A printing control unit 109 is formed from an image processing controlunit and the like. The printing control unit 109 performs various imageprocesses (e.g., smoothing process and print density correction process)for image data to be printed or the like, and converts the data intohigh-resolution image data, in order to form an image on paper by anelectrophotographic or inkjet printer arranged in a printer unit 109 a.

An interface control unit 110 communicates with an external terminalsuch as the information processing terminal 20 connected via a network,USB, or the like. The communication control method is a well-known one.The first embodiment adopts a LAN defined by IEEE803, and TCP/IP as anupper layer protocol. A Web server control unit 111 creates an HTML filecontaining an apparatus state and various job states, and provides apage in response to a browsing request from the information processingterminal 20 having a browser via the Internet. A mail control unit 112creates mail information to be sent to the information processingterminal 20 upon generation of an error, at the end of printing, or thelike.

<Configuration of Information Processing Terminal (Computer)>

FIG. 2 is a block diagram showing the basic configuration of theinformation processing terminal 20 suitable for an informationprocessing apparatus according to the present invention. A CPU 201executes a program stored in a ROM 202, main memory 203, or hard disk220, or a program read out from an FD drive 221 or CD-ROM drive 222, andcontrols the operation of the overall information processing terminalvia a system bus.

The ROM 202 stores control programs and the like for the CPU 201. Themain memory 203 temporarily stores programs and image data to perform aprocess by the information processing terminal at high speed. A harddisk control unit 204 controls the hard disk 220 which stores anoperating system, various application programs, image data, and thelike. Application software and driver software fortransmitting/receiving various control instructions and data to/from theimage processing apparatus 10, an operating system, and the like areinstalled in the hard disk 220. The installed driver software includes aprinter driver and scanner driver for using the image processingapparatus 10 as a peripheral device. An example of the applicationsoftware is a PC-assisted application 220 c containing procedures inFIGS. 4A, 4B and 10, and the like. In general, the application softwareand driver software are installed from another computer-readable medium,which stores them, to the hard disk 220 via the FD drive 221, CD-ROMdrive 222, or the like. The application software and driver software canalso be downloaded via a network control unit 209 a and installed in thehard disk 220.

The hard disk 220 saves printer profile information 220 a and printsetting information 220 b. The printer profile information 220 a isinformation on functions provided by the printer driver when the imageprocessing apparatus 10 is utilized as a printer by the computer. Theprint setting information 220 b is information referred to by theprinter driver in order to generate a print job when the imageprocessing apparatus 10 is utilized as a printer. These pieces ofinformation correspond to the printer driver and are saved. This alsoapplies to the scanner, and scanner profile information and scannersetting information (neither is shown) are also saved.

An FD drive control unit 205 controls the FD drive 221. A CD-ROM drivecontrol unit 206 controls the CD-ROM drive 222. A keyboard/mouse controlunit 207 controls a keyboard/mouse 230 serving as a means for inputtingan instruction from the operator. A display control unit 208 controls adisplay 240 which presents various displays to the operator. Aninterface control unit 209 communicates with an external terminal suchas the image processing apparatus 10 connected via a network, USB, orthe like. The communication control method is a well-known one. Thefirst embodiment adopts a LAN and TCP/IP, as described above.

FIG. 3 is a view showing an example of a PC-assisted copying functionregistration dialog in the information processing terminal 20. In thefirst embodiment, functions of implementing a copying process to performscanning and printing via a PC will be called PC-assisted copyingfunctions. Of the PC-assisted copying functions, functions associatedwith a printer will be called extended printer functions. Informationrepresenting printer driver functions provided for PC-assisted copyingfunctions will be called printer driver capability information. That is,the PC-assisted copying functions mean printer driver capabilityinformation. This dialog is displayed by the above-described PC-assistedapplication. The PC-assisted application is installed as an applicationdifferent from the printer driver in the hard disk 220, and activated.In FIG. 3, a combo box 301 is provided by the PC-assisted application220 c, and used to select a printer driver to be registered. When theuser clicks a ▾ mark at the right end, a list of printer drivers havingPC-assisted copying functions among printer drivers installed in thehard disk 220 of the information processing terminal 20 is displayed.This list can be displayed by referring to the printer profile 220 a bythe PC-assisted application 220 c because the printer profile 220 a alsocontains information representing the presence/absence of a PC-assistedcopying function.

An area 302 displays available printer driver capabilities asPC-assisted copying functions. The area 302 displays the capabilities ofa printer driver selected in the combo box 301. The first embodimentexemplifies a layout printing function (e.g., 2in1 to reduce and lay outtwo pages created by an application on one side of a sheet serving as aprint medium, 4in1 to reduce and lay out four pages on one side of asheet, and 8in1, 9in1, and 16in1), a poster printing function ofdividing a 1-page image into 2×2, 3×3, 4×4, or the like for a pluralityof sheets and printing the image, and a copy-forgery-inhibited patternprinting function of printing so that a hidden text appears upon copyingprinted paper. Target functions are not limited to them, and allfunctions of the printer driver can be PC-assisted copying functions.Note that functions provided by both the printer driver and imageprocessing apparatus are displayed as local copying functions of theimage processing apparatus.

When a registration button 303 is clicked, the PC-assisted application220 c transmits a PC-assisted copying function to the image processingapparatus 10 via the interface control unit 209. The IP address of theinformation processing terminal 20, a printer driver selected in thecombo box 301, and printer driver capabilities available as PC-assistedcopying functions displayed in the area 302 are transmitted.

<Registration of PC-Assisted Copying Function (Printer Driver CapabilityInformation)>

FIG. 4A is a flowchart showing process procedures by the PC-assistedapplication program when a PC-assisted copying function, i.e., printerdriver capability information is registered from the user interface inFIG. 3. The PC-assisted application program displays the user interfacewindow shown in FIG. 3 (step S411). If a printer driver to be registeredis selected in the user interface window, the PC-assisted applicationprogram displays functions provided by the printer driver in the column302. In display, the printer profile information 220 a is referred to.The PC-assisted application refers to printer profile informationcorresponding to the selected printer driver, and displays informationon contained functions in a format which allows the user to understandthe functions. In the example of FIG. 3, the printer driver capabilityinformation is displayed as a list of corresponding function names.

If the registration button 303 is clicked, the PC-assisted applicationcombines the address (IP address in the first embodiment) and computername of the information processing terminal, the selected printer drivername, and printer driver capability information which corresponds to theprinter driver and is read from the printer profile. Then, thePC-assisted application adds a predetermined registration command to thecombined set, and transmits the set to the image processing apparatus 10(S412).

In the first embodiment, the PC-assisted application is installed in thehard disk 220 as an application different from the printer driver, andactivated. Alternatively, the PC-assisted application may be installedas part of the printer driver in the hard disk 220, and the window inFIG. 3 may be displayed on the printer driver UI, or the process in FIG.4A may be activated from the printer driver. When the PC-assistedapplication is installed as part of the printer driver in this manner,the combo box 301 for selecting a printer driver desirably displays theprinter driver itself so as not to select another printer driver.

FIG. 4B is a flowchart showing a PC-assisted copying functionregistration process in the image processing apparatus 10. In step S401,the image processing apparatus 10 waits for reception of a PC-assistedcopying function from the information processing terminal 20. The imageprocessing apparatus may be configured to start the procedures in FIG.4B in response to reception of a PC-assisted copying function from theinformation processing terminal 20. Upon reception of the PC-assistedcopying function (printer driver capability information and registrationcommand), the image processing apparatus 10 registers the received IPaddress and printer driver name of the information processing terminal20 in the registration memory 103. In step S403, the image processingapparatus 10 registers the received printer driver capabilityinformation in the registration memory 103 so as to associate theprinter driver capability information with the IP address and printerdriver name. The registered IP address, printer driver name, and printerdriver capability information associated with them are saved as theassistant function list 103 a in the registration memory 103.

<Copying Process in Copying Machine (Image Processing Apparatus 10)>

FIG. 5 is a flowchart showing a copying function display process in theimage processing apparatus 10. These procedures are executed when theimage processing apparatus 10 is turned on or the function is switchedfrom another function (e.g., facsimile transmission function) to thecopying function. In step S501, it is determined whether the imageprocessing apparatus 10 has a local copying function performed by thesingle image processing apparatus. This is because some low-endapparatuses do not have any local copying function but always performPC-assisted copying. This is determined by referring to the localfunction list in the registration memory 103.

If it is determined in step S501 that the apparatus does not have anylocal copying function, it is determined in step S502 whether aregistered PC is connected to a network and activated. This can bedetermined by issuing an acknowledgement command such as PING to the IPaddress of the information processing terminal 20 that is registered instep S402. Note that when no printer driver capability information isregistered, the process proceeds similarly to a case wherein noregistered information processing terminal is connected. Whether theprinter driver capability information is registered can be determined byreferring to the assistant function list 103 a.

If it is determined in step S502 that the registered PC is neitherconnected nor activated, or no printer driver capability information isregistered, a message that copying is impossible is displayed on thedisplay unit 107, and the process ends (step S503). If it is determinedin step S502 that the registered PC is connected and activated,PC-assisted copying functions are displayed. Display of functions willbe described later with reference to FIGS. 6, 7, and 8.

If it is determined in step S501 that the apparatus has a local copyingfunction, it is determined in step S505 whether a registered PC isconnected to a network and activated. Similar to step S502, this can bedetermined by issuing an acknowledgement command such as PING. Note thatwhen no printer driver capability information is registered, the processproceeds similarly to a case wherein no registered informationprocessing terminal is connected.

If it is determined in step S505 that the registered PC is neitherconnected nor activated, or no printer driver capability information isregistered, only functions which can be implemented by local copying aredisplayed on the display unit 107 (step S506). At this time, functionscontained in the local function list 103 b are displayed. If it isdetermined in step S505 that the registered PC is connected andactivated, both local copying functions and PC-assisted copyingfunctions are displayed in step S507. Local copying functions aredisplayed by referring to a local function list, and in addition,PC-assisted copying functions are displayed by referring to theassistant function list 103 a. Display of functions in steps S506 andS507 will be described later with reference to FIGS. 6, 7, and 8.

FIGS. 6, 7, and 8 are views showing examples of copying function displayin the image processing apparatus 10. FIG. 6 shows an example of adisplay window displayed in step S506 when no printer driver capabilityinformation is registered, or a registered PC is neither connected noractivated. In this case, only functions (2in1, 4in1, and 8in1 in thefirst embodiment) which can be implemented by local copying aredisplayed.

FIG. 7 shows an example of a display window in step S507 when aregistered PC is connected and activated. In this case, functions(layout printing function such as 9in1 and 16in1, and poster printingfunction such as 2×2, 3×3, and 4×4) which are registered in step S402and can be implemented by PC-assisted copying are displayed in additionto functions (2in1, 4in1, and 8in1 in the first embodiment) which can beimplemented by local copying. In the first embodiment, functions whichcan be implemented by PC-assisted copying are identifiably displayedwith “(PC-assisted)”. However, no explicit display need be presented.The same display (step S504) is presented when an apparatus does nothave any local copying function. In this case, all functions arePC-assisted copying functions, so no explicit display need be presented.Alternatively, (PC-assisted) may be displayed only on a title“enlargement/reduction layout”.

FIG. 8 shows an example of another display window in steps S504 and S507when a registered PC is connected and activated. In this example,functions which can be implemented by PC-assisted copying are displayedas extended functions in an independent window. The window display isswitched by tab switching or the like between the enlargement/reductionlayout window shown in FIG. 7 and the extended function window shown inFIG. 8. Similar to FIG. 7, explicit display “(PC-assisted)” may or maynot be displayed.

<Copying Process>

FIG. 9 is a flowchart showing a copy instruction process in the imageprocessing apparatus 10. These procedures are executed by, e.g., thesystem control unit 101. In step S901, the user performs a copyingfunction selection operation. This operation is done by selecting adesired function by the user from a function display window as shown inFIG. 6, 7, or 8. Information (selected function information)representing the selected function is saved in the main memory 203 instep S901. Steps S901 and S902 need not be successive, and the flow maytemporarily wait for an input after step S901.

If the user designates the start of copying in step S902, the processfrom step S903 starts in response to the designation. The copy startinstruction operation is done by pressing a copy button (not shown) onthe operation unit 106.

In step S903, it is determined whether all functions selected in stepS901 are supported by local copying of the single copying machine (imageprocessing apparatus 10). This can be determined by determining whetherall the selected functions saved in step S901 are contained in the localfunction list 103 b. If it is determined that all functions aresupported by local copying, i.e., all selected functions are containedin the local function list 103 b, the flow branches to step S908. Instep S908, designated copying is performed by the single imageprocessing apparatus 10, and the process ends. Copying by the singleimage processing apparatus is identical to that implemented by aconventional copying machine. For example, image data of an originalimage read by the read control unit 108 is temporarily stored in theimage memory under the control of the system control unit. A processcorresponding to the selected function is executed by the system controlunit 101, and the image data is printed out by the printing control unit109.

If it is determined in step S903 that a function registered as aPC-assisted copying function is selected, an original document is readby the read control unit 108, and the image data is saved in the imagememory 104. In saving, image data are saved page by page such that imagedata of a 1-page original document is saved as one image data file.Image data may be directly transmitted to the information processingterminal 20 without saving the image data. When the image processingapparatus 10 comprises a storage device such as a hard disk, image datamay be saved in the storage device.

In step S905, a job ticket representing the selected copying function isgenerated. The job ticket contains, as computer-processable information,a printer driver name registered in step S402 and the item and value ofa function selected in step S901. The job ticket may contain varioustypes of information (e.g., paper size and the number of copies) usedfor printing. In the first embodiment, when a PC-assisted function isselected, all selected functions are processed by the printer driver.However, only a PC-assisted function may be processed by the printerdriver. This example will be described later as a modification to thefirst embodiment.

In step S906, the loaded/scanned image data and job ticket aretransmitted to the information processing terminal 20. In steps S907 andS910, the image processing apparatus 10 waits for a print instructionfrom the information processing terminal 20. The print instructionreceived at this time is a so-called print job, and contains image dataof each page to be printed and print setting information whichdesignates print settings.

If it is determined in step S907 that the image processing apparatus 10has received a print instruction from the information processingterminal 20, the image processing apparatus 10 performs designatedprinting in accordance with the print setting information in step S909,and the process ends. The printing process in step S909 is the same as aprinting process when the information processing terminal 20 utilizesthe printing function of the image processing apparatus 10 as a printer.That is, procedures when a conventional printer receives a print jobfrom a computer and executes a printing process are executed in stepS909.

If the image processing apparatus 10 does not receive any printinstruction from the information processing terminal 20 in step S907, itis determined in step S910 whether a predetermined time has elapsed. Ifthe predetermined time has elapsed, a message that PC-assisted copyingresults in an error is displayed on the display unit 107 in step S911,and the process ends.

The job ticket is described in JDF (Job Definition Format) defined usingXML. The job ticket has a format for describing instructions for aprinting function, pre-process, and post-process. The job ticket cansatisfactorily describe functions provided by the copying machine andthose provided by the printer driver of the computer. Hence, a selectedfunction can be described in the job ticket by using a tag defined foreach item of the selected function and describing the value of the itemin correspondence with the tag. Needless to say, the format is notlimited to JDF, and any format can be employed as far as functionsprovided by the copying machine, functions provided by the printerdriver of the computer, information for specifying a printer driver, andthe like are described in a format interpretable by the informationprocessing terminal 20.

FIG. 10 is a flowchart showing process procedures when the informationprocessing terminal 20 performs the process of a job ticket issued bythe image processing apparatus 10 in step S906 of FIG. 9.

In step S1001, a job ticket monitoring application is activated. The jobticket monitoring application is installed in the hard disk 220 as anapplication different from the printer driver. The job ticket monitoringapplication may be activated automatically when the informationprocessing terminal 20 is turned on, or individually by the user. In thefirst embodiment, the job ticket monitoring application is described aspart of the PC-assisted application, but these programs may beindependent of each other. The process from step S1002 is executed bythe job ticket monitoring application.

In step S1002, the job ticket monitoring application determines whetherit receives a scanned image and job ticket from the image processingapparatus 10. That is, the job ticket monitoring application waits forreception of the scanned image data and job ticket from the imageprocessing apparatus 10. The image data and job ticket are informationtransmitted from the image processing apparatus 10 in step S906. Uponreception of the scanned image data and job ticket, the job ticketmonitoring application starts a printing operation based on the contentsof the job ticket in step S1003. In order to execute various printingfunctions described in the job ticket, the job ticket monitoringapplication calls a printer driver described in the job ticket, executesvarious printing processes, and instructs the image processing apparatus10 to print. In response to the print instruction, the image processingapparatus 10 prints in step S909, and the PC-assisted copying process iscompleted.

FIG. 19A is a flowchart for explaining in more detail the process instep S1003. The job ticket monitoring application reads a selectedcopying function from the job ticket (S1901), i.e., reads PC-assistedfunction information and local function information. The job ticketmonitoring application generates print setting information based on theread selected copying function (S1902). For this purpose, the job ticketmonitoring application reads out the print setting information 220 b(saved in correspondence with a printer driver) corresponding to aprinter driver designated by the job ticket. Of the readout printsetting information, an item corresponding to the selected copyingfunction described in the job ticket is rewritten into the value of theitem described in the job ticket. The item of the selected copyingfunction and that of print setting information can be made to correspondto each other by preparing a correspondence table for the tag name of ajob ticket and the item of print setting information. The job ticketmonitoring application saves the print setting information. If a changeof the print setting information requires the intervention of theoperating system or printer driver, the print setting information ischanged in accordance with necessary procedures.

In step S1903, the job ticket monitoring application calls the function(API) of the operating system, transfers the received image datasequentially from the start as print data to the printer driver, andcauses the printer driver to print. In the first embodiment, the jobticket monitoring application causes the printer driver to printreceived image data. However, the present invention is not limited tothis, and the job ticket monitoring application may activate a scannerdriver in driver software stored in the hard disk 220, and instruct theprinter driver to print image data received from the image processingapparatus by using the scanner driver. Also in this case, the job ticketmonitoring application instructs the printer driver on print settings inthe job ticket by using an API called a driver SDK.

FIG. 19B is a flowchart simply showing a process by the printer driverupon reception of print data. The printer driver operates similarly to aconventional one, and does not require any new function for theembodiment. However, when the printer driver performs a PC-assistedapplication function, the process branches from step S1902 in FIG. 19Ato step S1911 in FIG. 19B. In FIG. 19B, the printer driver reads theprint setting information 220 b, and executes a process among set itemsthat is not provided by the image processing apparatus 10 and should beexecuted as a software process by the printer driver itself. Forexample, when the poster printing function is implemented by a softwareprocess of the printer driver, the printer driver performs enlargementof image data to a designated size and division into a designatednumber. When the copy-forgery-inhibited pattern printing function isset, the printer driver reads out a hidden image pattern managed by it,and adds the hidden image pattern to image data.

After that, the printer driver generates a print job which is describedin, e.g., the page description language (PDL) and contains, asparameters, values described in the job ticket (or corresponding values)for items of print setting information using functions of the imageprocessing apparatus 10. First, the printer driver generates, inaccordance with the PDL rules, a job control header in which, amongselected copying functions described in the job ticket, items exceptitems processed in step S1911 are values of the job ticket description(S1912). The printer driver transmits, to the image processing apparatus10, data which describes data to be printed in accordance with the PDLrules after the header. The process in step S1913 utilizes functionsprovided by the operating system.

In the above way, when the copying machine according to the firstembodiment is operated, it transmits information on extended functionsas a job ticket to the computer. The computer writes, in print settinginformation of a print job, copy settings described in the received jobticket, issues the print job to the copying machine, and causes thecopying machine to print using the printer function of the copyingmachine. As a result, extended functions provided by the computer can beutilized in a copying process without the intervention of the user onthe computer.

Second Embodiment

In the first embodiment, only functions of the printer driver can beregistered as PC-assisted copying functions in the image processingapparatus 10. When an original document is scanned by the scannerdriver, functions of the scanner driver can also be registered. In thesecond embodiment, a description of a part common to the firstembodiment will be omitted.

FIG. 11 is a view showing an example of a registration dialog for aPC-assisted copying function (printer driver capability information) inan information processing terminal 20. This dialog is displayed by thesame procedures as those in FIG. 4A, and a function is registered. Thisapplication is installed in a hard disk 220 as an application differentfrom the printer driver, and activated.

A combo box 1101 is used to select a printer driver to be registered,and is identical to the combo box 301.

An area 1102 displays available printer driver capabilities asPC-assisted copying functions, and is identical to the column 302.

A combo box 1103 is used to select a scanner driver to be registered.When the user clicks a ▾ mark at the right end, a list of scannerdrivers having PC-assisted copying functions among scanner driversinstalled in the hard disk 220 of the information processing terminal 20is displayed.

An area 1104 displays available scanner driver capabilities asPC-assisted copying functions. The area 1104 displays the capabilitiesof a scanner driver selected in the combo box 1103. The secondembodiment exemplifies a dust/scratch reduction function of reducingwhite fine paper dust or mote which stands out at a dark portion such ashair, a fading correction function of correcting color cast and fadinggenerated in an old photograph or the like, and a moiré reductionfunction of reducing density nonuniformity and stripe patterns generatedupon scanning a printed product. Target functions are not limited tothem, and all functions of the scanner driver can be PC-assisted copyingfunctions.

When a registration button 1105 is clicked, PC-assisted copyingfunctions are transmitted to an image processing apparatus 10 via aninterface control unit 209. The IP address of the information processingterminal 20, a printer driver selected in the combo box 1101, printerdriver capabilities (i.e., printer driver capability information)displayed in the area 1102, a scanner driver selected in the combo box1103, and scanner driver capabilities (i.e., scanner driver capabilityinformation) displayed in the area 1104 are transmitted. In thisfashion, a pair of printer driver capability information and scannerdriver capability information is selected and transmitted to the imageprocessing apparatus.

FIG. 12 is a flowchart showing a PC-assisted copying functionregistration process in the image processing apparatus 10.

In step S1201, the image processing apparatus 10 waits for reception ofa PC-assisted copying function from the information processing terminal20. Upon reception of the PC-assisted copying function, the imageprocessing apparatus 10 registers the received IP address and printerdriver name/scanner driver name of the information processing terminal20 in a registration memory 103. In step S1203, the image processingapparatus 10 registers the received printer driver capability/scannerdriver capability in the registration memory 103 so as to associate theprinter driver capability/scanner driver capability with the IP addressand printer driver name/scanner driver name. Then, the process iscompleted. Even information on the scanner may be contained in a printerprofile 220 a.

A copying function display process in the image processing apparatus 10according to the second embodiment is the same as that in FIG. 5, and adescription thereof will be omitted. Display of copying functions in theimage processing apparatus 10 according to the second embodiment is thesame as those of FIGS. 6 and 7, and a description thereof will beomitted.

FIG. 13 shows an example of a copying function display window in stepsS504 and S506 in the procedures of FIG. 5 that are executed in thesecond embodiment when a registered PC is connected and activated. FIG.8 shows only the copy-forgery-inhibited pattern printing which can beimplemented by the printer driver. In FIG. 13, the dust/scratchreduction function, fading correction function, and moiré reductionfunction which can be implemented by the scanner driver are also added.Similar to FIG. 8, explicit display “(PC-assisted)” may or may not bedisplayed.

FIG. 14 is a flowchart showing a copy instruction process in the imageprocessing apparatus 10. This process corresponds to FIG. 9 according tothe first embodiment. In step S1401 of FIG. 14, the user selects acopying function. This operation is done by selecting a desired functionby the user from a function display window as shown in FIG. 6, 7, or 13.The selected function is saved as a selected copying function in themain memory.

In step S1402, the user designates the start of copying by, for example,pressing a copy button (not shown) on an operation unit 106. In responseto this, a process in the image processing apparatus starts.

In step S1403, it is determined whether all functions selected in stepS1401 are supported by local copying. If it is determined that allfunctions are supported by local copying, designated copying isperformed by the single image processing apparatus 10 in step S1410, andthe process ends.

If it is determined in step S1403 that a function registered as aPC-assisted copying function (printer driver capability information) isselected, a job ticket is created and transmitted to the informationprocessing terminal 20. The job ticket contains a printer drivername/scanner driver name registered in step S1202 and a PC-assistedcopying function selected in step S1401. The job ticket may containvarious types of information (e.g., paper size and the number of copies)used for printing.

In step S1405, it is determined whether the image processing apparatus10 has received a scan instruction from the information processingterminal 20. If it is determined in step S1405 that the image processingapparatus 10 has received a scan instruction from the informationprocessing terminal 20, the image processing apparatus 10 performsscanning in accordance with the instruction, and transfers the scannedimage data to the information processing terminal 20 in step S1407. Ifthe image processing apparatus 10 does not receive any scan instructionfrom the information processing terminal 20 in step S1405, it isdetermined in step S1406 whether a predetermined time has elapsed. Ifthe predetermined time has elapsed, a message that PC-assisted copyingresults in an error is displayed on a display unit 107 in step S1412,and the process ends.

After the image processing apparatus 10 transfers the scanned image tothe information processing terminal 20 in step S1407, it is determinedin step S1408 whether the image processing apparatus 10 has received aprint instruction (i.e., print job) from the information processingterminal 20.

If the image processing apparatus 10 receives a print instruction fromthe information processing terminal 20 in step S1408, the imageprocessing apparatus 10 performs designated printing in step S1411, andthe process ends. If the image processing apparatus 10 does not receiveany print instruction from the information processing terminal 20 instep S1408, it is determined in step S1409 whether a predetermined timehas elapsed. If the predetermined time has elapsed, a message thatPC-assisted copying results in an error is displayed on the display unit107 in step S1412, and the process ends.

FIG. 15 is a flowchart showing a job ticket process in the informationprocessing terminal 20. In step S1501, a job ticket monitoringapplication is activated. The job ticket monitoring application isinstalled in the hard disk 220 as an application different from eitherthe printer driver or scanner driver. The job ticket monitoringapplication may be activated automatically when the informationprocessing terminal 20 is turned on, or individually by the user.

In step S1502, the job ticket monitoring application determines whetherit receives a job ticket from the image processing apparatus 10. The jobticket is information transmitted from the image processing apparatus 10in step S1404. Upon reception of the job ticket, the job ticketmonitoring application starts a scanning operation based on the contentsof the job ticket in step S1503. In order to execute various scanningfunctions described in the job ticket, the job ticket monitoringapplication rewrites scanner setting information corresponding to ascanner driver into values corresponding to extended scanner functionsdescribed in the job ticket. The job ticket monitoring application callsa scanner driver described in the job ticket, and instructs the imageprocessing apparatus 10 to transfer a scanned image. In response to thescan instruction, the image processing apparatus 10 performs scanning instep S1407. Note that when a function which should be performed insoftware by the scanner driver is contained in selected copyingfunctions, a process to perform a selected function is executed by thescanner driver for read image data.

In step S1504, the job ticket monitoring application determines whethertransfer of the scanned image has ended. If the job ticket monitoringapplication determines that transfer of the scanned image has ended, itstarts a printing operation based on the contents of the job ticket instep S1506. In order to execute various printing functions described inthe job ticket, the job ticket monitoring application calls a describedprinter driver, executes various printing processes, and instructs theimage processing apparatus 10 to print. In response to the printinstruction, the image processing apparatus 10 prints in step S1411, andthe PC-assisted copying process is completed.

If the job ticket monitoring application determines in step S1504 thattransfer of the scanned image has not ended, it determines in step S1505whether a predetermined time has elapsed. If the predetermined time haselapsed, a message that PC-assisted copying results in an error isdisplayed on a display 240 in step S1507, and the process ends.

By the above-described configuration and processes, according to thesecond embodiment in addition to the effects of the first embodiment,extended scanner functions provided by the scanner driver can be addedas some of PC-assisted copying functions, and selected by the copyingmachine. No special operation for this is required, and extendedfunctions (PC-assisted copying functions) can be utilized by onlyselecting functions in the copying machine and designating the start ofcopying.

Third Embodiment

In the above embodiments, the number of PC-assisted copying functionswhich can be registered in the image processing apparatus 10 is onlyone. However, a plurality of assistant copying functions may also beregistered. The basic process is the same as those in the first andsecond embodiments, and only a difference will be described.

FIG. 16A is a view showing a PC-assisted copying function registrationdialog when a plurality of PC-assisted copying functions can beregistered. Portions 1601 to 1605 are functionally identical to theportions 1101 to 1105 in FIG. 11, and a description thereof will beomitted.

In FIG. 16A, reference numeral 1606 denotes a name which is registeredas an assistant copying function in an image processing apparatus 10.The user checks this name, and can identify an information processingterminal 20 and its printer driver/scanner driver which is used as aPC-assisted copying function.

In step S402 of FIG. 4B and step S1202 of FIG. 12, the image processingapparatus 10 also registers the name set in 1606 in a registrationmemory 103 together with the IP address of the information processingterminal 20 and the like.

FIG. 16B shows process procedures by the information processing terminal20 when a PC-assisted copying function is registered in the imageprocessing apparatus 10 via the user interface in FIG. 16A. First, theinformation processing terminal 20 displays the user interface in FIG.16A (step S1611). If a printer driver is designated in the userinterface, the information processing terminal 20 reads a correspondingfunction list from a printer profile 220 a, and displays the list. If ascanner driver is designated, the information processing terminal 20reads a corresponding function list from a scanner profile, and displaysthe list. If the name 1606 is input and the registration button 1605 isclicked, the information processing terminal 20 transmits, to the imageprocessing apparatus 10, a set of the name of registered information, anextended printer function, and an extended scanner function asinformation representing PC-assisted copying functions (i.e., printerdriver capability information and scanner driver capabilityinformation). Upon reception of the information, the image processingapparatus 10 saves it.

Similar to the first embodiment, the process in FIG. 5 is executed whenthe image processing apparatus 10 is turned on or the function isswitched from another function (e.g., facsimile transmission function)to the copying function.

Note that in steps S502 and S505 of FIG. 5, a command such as PING isissued to the IP addresses of all registered information processingterminals 20, and it is determined whether each information processingterminal 20 is connected to a network and activated.

FIG. 17 shows a window for selecting which PC-assisted copying functionis to be used in the image processing apparatus 10. An informationprocessing terminal 20 which is determined in step S502 or S505 not tobe connected or activated is desirably grayed out or is not displayed,informing the user that the information processing terminal 20 isunavailable. In FIG. 17, the user selects a PC-assisted function for useby designating the name of the PC-assisted function among registeredPC-assisted functions, i.e., pairs of printer driver capabilityinformation and scanner driver capability information. If the userselects one name, a copying process using the selected PC-assistedcopying function is the same as that in the first and secondembodiments.

Note that the window in FIG. 17 may be displayed at the beginning insteps S504, S506, and S507 of FIG. 5, or may be switched by tabswitching or the like from the enlargement/reduction layout window shownin FIG. 7 or the extended function window shown in FIG. 8 or 13.

The PC-assisted function shown in FIG. 7, 8, or 13 is a function whichis registered in the registration memory 103 as a function of a driverselected in FIG. 17.

[First Modification]

In the embodiments, a PC-assisted application is used to extend thefunction of a copying machine. However, the copying system can also beconfigured by a PC-assisted application using a single-function scannerand a single-function printer. In this case, for example, the scannerplays the role of a copying machine in the embodiments.

[Second Modification]

In step S905 of FIG. 9, a job ticket contains not only a PC-assistedfunction but also all selected copying functions, and is transmitted tothe information processing terminal. However, the job ticket may containa PC-assisted function and be transmitted to the information processingterminal. In this case, the image processing apparatus 10 does notfunction as the printer of the information processing terminal, butfunctions as follows. More specifically, it is determined whether aprint job is identical to a copy job associated with a job tickettransmitted in step S906. For this purpose, an identifier is containedin a job ticket, and the information processing terminal sets theidentifier in a print job and issues the print job. If it is determinedthat the print job is identical to the copy job, the print job isexecuted to generate 1-page image data for a sheet serving as a printmedium in accordance with print setting information. The 1-page imagedata is copied as 1-page image data read by the copy read control unit108 in a local copying operation. In other words, a process whichimplements a local copying function among selected copying functions isexecuted for 1-page image data generated on the basis of the print job,and then a printing process is performed. If the local copying functionis a function (e.g., layout function) which targets a plurality ofpages, a process to implement the local copying function for a pluralityof pages generated on the basis of the print job is executed.

In this manner, execution entities for the local copying function andPC-assisted function are separated. Even if a selected local copyingfunction is not provided by the printer driver, the function can becompletely implemented.

Other Embodiments

Note that the present invention can be applied to an apparatuscomprising a single device or to system constituted by a plurality ofdevices.

Furthermore, the invention can be implemented by supplying a softwareprogram, which implements the functions of the foregoing embodiments,directly or indirectly to a system or apparatus, reading the suppliedprogram code with a computer of the system or apparatus, and thenexecuting the program code. In this case, so long as the system orapparatus has the functions of the program, the mode of implementationneed not rely upon a program.

Accordingly, since the functions of the present invention areimplemented by computer, the program code itself installed in thecomputer also implements the present invention. In other words, theclaims of the present invention also cover a computer program for thepurpose of implementing the functions of the present invention.

In this case, so long as the system or apparatus has the functions ofthe program, the program may be executed in any form, e.g., as objectcode, a program executed by an interpreter, or scrip data supplied to anoperating system.

Examples of storage media that can be used for supplying the program area floppy disk, a hard disk, an optical disk, a magneto-optical disk, aCD-ROM, a CD-R, a CD-RW, a magnetic tape, a non-volatile type memorycard, a ROM, and a DVD (DVD-ROM and a DVD-R).

As for the method of supplying the program, client computer can beconnected to a website on the Internet using a browser of the clientcomputer, and the computer program of the present invention or anautomatically-installable compressed file of the program can bedownloaded to a recording medium such as a hard disk. Further, theprogram of the present invention can be supplied by dividing the programcode constituting the program into a plurality of files and downloadingthe files from different websites. In other words, a WWW (World WideWeb) server that downloads, to multiple users, the program files thatimplement the functions of the present invention by computer is alsocovered by the claims of the present invention.

Further, it is also possible to encrypt and store the program of thepresent invention on a storage medium such as a CD-ROM, distribute thestorage medium to users, allow users who meet certain requirements todownload decryption key information from a website via the Internet, andallow these users to decrypt the encrypted program by using the keyinformation, whereby the program is installed in the user computer.

Furthermore, besides the case where the aforesaid functions according tothe embodiments are implemented by executing the read program bycomputer, an operating system or the like running on the computer mayperform all or a part of the actual processing so that the functions ofthe foregoing embodiments can be implemented by this processing.

Furthermore, after the program read from the storage medium is writtento a function expansion board inserted into the computer or to a memoryprovided in a function expansion unit connected to the computer, a CPUor the like mounted on the function expansion board or functionexpansion unit performs all or a part of the actual processing so thatthe functions of the foregoing embodiments can be implemented by thisprocessing.

As many apparently widely different embodiments of the present inventioncan be made without departing from the spirit and scope thereof, it isto be understood that the invention is not limited to the specificembodiments thereof except as defined in the appended claims.

This application claims the benefit of Japanese Patent Application No.2005-148556 filed on May 20, 2005, which is hereby incorporated byreference herein in its entirely.

The invention claimed is:
 1. An image forming apparatus comprising: a reading unit configured to read an image; one or more processors; and one or more memories storing instructions that, when executed by the one or more processors, cause the image forming apparatus to function as: (1) a display control unit configured to display a selection screen for selecting one from among processes including at least first processing and second processing as processing for image data obtained by reading an image by the reading unit, wherein the first processing is processing executable by the image forming apparatus for image data obtained by reading an image by the reading unit, and the second processing is processing executable by an external device for image data obtained by reading an image by the reading unit; (2) a creation unit configured to create image data processed by the first processing from the image data obtained by reading an image by the reading unit, if the first processing is selected via the selection screen as the processing for the image data obtained by reading an image by the reading unit; (3) a transmission unit configured to transmit the image data obtained by reading an image by the reading unit to the external device, if the second processing is selected via the selection screen as the processing for the image data obtained by reading an image by the reading unit; and (4) a reception unit configured to receive, from the external device to which the image data was transmitted by the transmission unit, image data processed by the second processing from the image data obtained by reading an image by the reading unit that was transmitted to the external device by the transmission unit.
 2. The image forming apparatus according to claim 1, wherein the transmission unit is configured to transmit (1) the image data obtained by reading an image by the reading unit together with (2) an instruction to execute the second processing.
 3. The image forming apparatus according to claim 1, further comprising a print unit configured to print, on a print medium, the image data created by the creation unit.
 4. The image forming apparatus according to claim 3, wherein the print unit is configured to print the image data that was processed by the second processing by the external device from the image data obtained by reading an image by the reading unit and received by the reception unit.
 5. The image forming apparatus according to claim 1, further comprising a determination unit configured to determine whether or not the external device is connected to the image forming apparatus, wherein the display control unit is configured to display both the first processing and the second processing as choices in the selection screen when it is determined that the external device is connected, and the display control unit is configured not to display the second processing but to display the first processing as a choice in the selection screen when it is determined that the external device is not connected.
 6. An image forming method performed by an image forming apparatus, the method comprising: reading an image; displaying a selection screen for selecting one from among processes including at least first processing and second processing as processing for image data obtained by reading an image, wherein the first processing is processing executable by the image forming apparatus for image data obtained by reading an image, and the second processing is processing executable by an external device for image data obtained by reading an image; creating image data processed by the first processing from the image data obtained by reading an image, if the first processing is selected via the selection screen as the processing for the image data obtained by reading an image; transmitting the image data obtained by reading an image to the external device, if the second processing is selected via the selection screen as the processing for the image data obtained by reading an image; and receiving, from the external device to which the image data was transmitted in the transmitting, image data processed by the second processing from the image data obtained by reading an image that was transmitted to the external device in the transmitting.
 7. The image forming method according to claim 6, wherein in the transmitting, the image data obtained by reading an image is transmitted together with an instruction to execute the second processing.
 8. The image forming method according to claim 6, further comprising printing, on a print medium, the image data created in the creating.
 9. The image forming method according to claim 8, wherein the image data that was processed by the second processing by the external device from the image data obtained by reading an image and received in the receiving is printed in the printing.
 10. The image forming method according to claim 6, further comprising determining whether or not the external device is connected to the image forming apparatus, wherein both the first processing and the second processing is displayed in the displaying as choices in the selection screen when it is determined that the external device is connected, and the second processing is not displayed but the first processing is displayed as a choice in the selection screen when it is determined that the external device is not connected.
 11. A non-transitory computer-readable medium storing a program therein for causing an image forming apparatus to execute an image forming method, the method comprising: reading an image; displaying a selection screen for selecting one from among processes including at least first processing and second processing as processing for image data obtained by reading an image, wherein the first processing is processing executable by the image forming apparatus for image data obtained by reading an image, and the second processing is processing executable by an external device for image data obtained by reading an image; creating image data processed by the first processing from the image data obtained by reading an image, if the first processing is selected via the selection screen as the processing for the image data obtained by reading an image; transmitting the image data obtained by reading an image to the external device, if the second processing is selected via the selection screen as the processing for the image data obtained by reading an image; and receiving, from the external device to which the image data was transmitted in the transmitting, image data processed by the second processing from the image data obtained by reading an image that was transmitted to the external device in the transmitting.
 12. The non-transitory computer-readable medium according to claim 11, wherein in the transmitting, the image data obtained by reading an image is transmitted together with an instruction to execute the second processing.
 13. The non-transitory computer-readable medium according to claim 11, wherein the method further comprises printing, on a print medium, the image data created in the creating.
 14. The non-transitory computer-readable medium according to claim 13, wherein the image data that was processed by the second processing by the external device from the image data obtained by reading an image and received in the receiving is printed in the printing.
 15. The non-transitory computer-readable medium according to claim 11, wherein the method further comprises determining whether or not the external device is connected to the image forming apparatus, and wherein both the first processing and the second processing is displayed in the displaying as choices in the selection screen when it is determined that the external device is connected, and the second processing is not displayed but the first processing is displayed as a choice in the selection screen when it is determined that the external device is not connected. 